﻿@using Krystalware.SlickUpload
@{
    if (Page.Title.IndexOf(" - SlickUpload Samples") == -1)
    {
        Page.Title += " - SlickUpload Samples";
    }
}
<!DOCTYPE html>
<html>
<head>
    <title>SlickUpload Samples</title>
    <link rel="stylesheet" type="text/css" href="@Url.Content("~/content/site.css")" />
    <link rel="stylesheet" type="text/css" href="@Url.Content("~/content/slickupload.css")" />
<!--[if lte IE 6]>
    <style type="text/css">
        a, span, b, img { behavior: url(@Url.Content("~/Content/iepngfix/iepngfix.htc")) }
    </style>
    <script type="text/javascript" src="@Url.Content("~/Content/iepngfix/iepngfix_tilebg.js")"></script>
<![endif]-->
    @RenderSection("head", false)
</head>
<body>
    <div id="headerContainer">
        <div id="header">
            <a href="http://krystalware.com/Products/SlickUpload/"><img width="125" height="29" src="@Url.Content("~/Content/krystalware_small.png")" style="float:right" /></a>
            <div style="clear:none">
                <img width="48" height="48" src="@Url.Content("~/Content/SlickUpload_48x48.png")" style="vertical-align:middle;margin-right:.5em" />
                SlickUpload Samples
            </div>
        </div>
    </div>
    <div id="contentContainer">
        <div id="sidebar">
            <h2 style="margin:0;padding:0">Samples</h2>
            <p><strong>@Html.ActionLink("Overview", "Index", "Home")</strong> &ndash; demonstrates the basics of SlickUpload including file selection, maximum files limits, maximum file size limits, file type validation, requiring file selection.</p>
            <p><strong>@Html.ActionLink("Client API", "ClientApi", "Home")</strong> &ndash; uses the SlickUpload client API to create an upload form without using the SlickUpload server side controls or helpers.</p>
            @*<p><strong><a href="<%=ResolveUrl("~/FileNameGenerator/Default") + CurrentLanguageExtension %>">FileNameGenerator</a></strong> &ndash; how to control and generate server filenames for files as they are uploaded.</p>
            <p><strong><a href="<%=ResolveUrl("~/AdditionalFields/Default") + CurrentLanguageExtension %>">Additional Fields</a></strong> &ndash; how to add additional input fields for each selected file.</p>
            <p><strong><a href="<%=ResolveUrl("~/CustomProgress/Default") + CurrentLanguageExtension %>">Custom Progress</a></strong> &ndash; display custom progress information during a postprocessing step after files are uploaded.</p>
            <p><strong><a href="<%=ResolveUrl("~/Localization/Default") + CurrentLanguageExtension %>">Localization</a></strong> &ndash; how to localize the SlickUpload control.</p>
            <p><strong><a href="<%=ResolveUrl("~/ModalProgress/Default") + CurrentLanguageExtension %>">Modal Progress</a></strong> &ndash; show the progress display in a modal.</p>
            <p><strong><a href="<%=ResolveUrl("~/Skinned/Default") + CurrentLanguageExtension %>">Skinned</a></strong> &ndash; skin the file list and progress display.</p>
            <p><strong><a href="<%=ResolveUrl("~/S3Upload/Default") + CurrentLanguageExtension %>">Upload to Amazon S3</a></strong> &ndash; how to upload to Amazon's Simple Storage Service with progress display.</p>
            <p><strong><a href="<%=ResolveUrl("~/SqlClient/Default") + CurrentLanguageExtension %>">Upload to SQL Server</a></strong> &ndash; upload directly to a SQL Server, streaming with no memory usage.</p>
            <p><strong><a href="<%=ResolveUrl("~/CustomUploadStreamProvider/Default") + CurrentLanguageExtension %>">Custom UploadStreamProvider</a></strong> &ndash; how to develop your own upload stream provider &ndash; this example shows how to zip files as they are uploaded.</p>
            <p><strong><a href="<%=ResolveUrl("~/Clustered/Default") + CurrentLanguageExtension %>">Clustered</a></strong> &ndash; use a StatusManager configuration to allow uploads with progress to a cluster/web farm/web garden.</p>
            <p><strong><a href="<%=ResolveUrl("~/simple") %>">Simple</a></strong> &ndash; the bare metal SlickUpload control with no customizations.</p>*@
            <h2 style="margin-bottom:0;padding-bottom:0">Resources</h2>
            <p><strong><a href="http://krystalware.com/Products/SlickUpload/Documentation/">Documentation</a></strong> &ndash; Read the SlickUpload documentation.</p>
            <p style="margin-bottom:0"><strong><a href="http://krystalware.com/forums/">Forums</a></strong> &ndash; Ask or answer questions in the SlickUpload support forum.</p>
        </div>
        <div id="content">
            <h1 class="title">@Page.Title.Substring(0, Page.Title.IndexOf(" -")) Sample</h1>
            @RenderBody()
            <div style="border:1px solid #ccc;padding:.5em">
                <strong>NOTE:</strong> the maximum allowed request size for this sample is <strong>@(SlickUploadContext.Config.UploadProfiles["default"].MaxRequestLength / 1024) MB</strong>. If you attempt to upload files larger than this,
                you will recieve a oversized upload error which SlickUpload will handle gracefully. This is controlled by the maxRequestLength attribute of the
                httpRuntime key in the web.config file.
            </div>
            @RenderSection("configuration", false)
            <h1>Description</h1>
            @RenderSection("description", false)
        </div>
    </div>
    <div id="footer">
        &copy; @DateTime.Now.Year Krystalware
    </div>
</body>
</html>